Form フォーム UI
Form フォームのComponent コンポーネント code
Formタグ で入力をくくる
Input 入力
Textarea テキストエリア
Radio Button ラジオボタン
Select セレクト UI
Check boxe チェックボックス UI
配置
上から下に1つの方向に眼が移動するように配置したい
❌左→右→左下→右下など
1タスクを1方向に解決
分割する
同属性のフォームで分けて配置する
ラベルとフィールド
❌左ラベル 右フィールド
😊左上ラベル フォーム下
ボタン Button UIの配置
送信、キャンセルなど
スマホ
😊FAB Floating Action Button
Webブラウザ Web Browser
フォームの下
分割
分割する時
Mobile UI
Scroll スクロールが辛い
キーボード Keyboardが下から表示されるのも辛い
Tap タップ UIの方が楽。気持ちいい。
あとから編集、更新が多いもの
BtoBサービス多い
何か書類を見ながら行うもの
分割しない時
Conversion コンバージョンをあげたい
項目数、画面数をへらす
分割方法
種類で分割
入力漏れをさせない工夫
Check boxe チェックボックス UI,validation バリデーション
重要度で分割
よく使われる機能を浅い階層、ニッチな機能を深い階層へ
ユーザーの習熟度ででうまく使い分けられる
なかなか消せない消せない機能を残すなど
validation バリデーション
😊Error エラーメッセージや入力内容に対する対するメッセージはフォームの下に配置して動的に表示
フォーカス インジケーター Focus indicator
現在入力される範囲をわかりやすく示す
進行状況の表示
Progress Indicator Loading UIで現在の状態を表示
特に長いForm フォームだと必須
画面を邪魔しない程度の大きさにする
別ページに分けてる場合
階層型で表示も良い
ホーム
✅別ページ1
別ページ2
入力値
input タグ
type属性の設定
Required 必須
Conversion コンバージョンをあげるために
必須要件のみ入力し、他は後で入力可能
ReadOnly、編集可能、空
FormUIをリスト情報の表示、編集、新規追加の使用において使い回せるように実装する
AutoFocus
フォームページになった際、、自動でキーボード開く。
Label ラベル UI
code:label.html
<label for="email">メールアドレス</label>
<input id="email">
Accessibility アクセシビリティ Web
キーボード Keyboardのみで操作できるか
Tabで移動できるか
Font フォント16px以上
Hit Target タッチ範囲 UI 44px以上
参考
Form component — Vuetify.js
Form - Ant Design
58 Form Design Best Practices & Form UX Examples
https://uxdesign.cc/text-fields-forms-design-ui-components-series-2b32b2beebd0
https://uxdesign.cc/text-fields-forms-design-ui-components-series-2b32b2beebd0
https://medium.com/google-design/the-evolution-of-material-designs-text-fields-603688b3fe03
Geri Reid - Forms best practice
https://blog.openreplay.com/form-validation-using-javascript-s-constraint-validation-api